How the derived fonts are made

The oblique fonts are based on their non-oblique (upright) variants, and are simply slanted by a suitable transformation matrix.

The condensed font is done similarly; the transformation matrix performs compression along the x-axis. The reduced font has been scaled in both x- and y-axes.

The small caps font is made by copying an existing font, and placing reduced copies of the uppercase glyphs in the lowercase positions (thanks to Bob Tinkelman for the code to do this).

Here's how the metric information for the derived fonts was obtained:

Bounding Box Information
(width, height, depth and italic correction) was obtained by running a PostScript program, getmetrics, on a PostScript device.
Kerning Information
for the oblique fonts is copied from their upright versions; this is not optimal, but should be pretty close. Kerning data for the condensed font is simply scaled from the original. Kerning data for the small caps font is obtained in the following way: for a pair of characters x and y in the original AFM file:
  1. If neither x nor y is a lower-case letter, the kerning is copied into the small caps font, otherwise the kerning data is ignored.
  2. If both x and y are upper-case letters, then three extra items of kerning data are added to the font for the pairs (tolower(x), y), (x,tolower(y)) and ( tolower(x),tolower(y)), by copying the datum for (x, y). Again, this is unlikely to be optimal, but should be pretty close.